Previo

Volvamos a la base de la EHPM.

use "datos/ehpm_2019", clear

Pendiente de la sesión pasada

Variables cualitativas

Pastel… pero ya no se usa.


graph pie if actpr2012==10, over(r104)

Si queremos ponerle etiquetas a los pedazos de pastel.

graph pie if actpr2012==10, over(r104) plabel(_all percent) 

Este gráfico podría ser una línea de texto. TACHE.

Barras

Para que sea más fácil e intuitivo utilizaremos un “ado”.

ssc install catplot, replace

catplot r104 if actpr2012==10
catplot r104 if actpr2012==10 [iw=fac]

catplot r104 actpr2012 if r106>14 [iw=fac]

Un poquito más complicado



catplot r104 actpr2012 if r106>15, ///
percent(r104) ///
var1opts(label(labsize(small))) ///
var2opts(label(labsize(small)))  ///
title("Condición de actividad" ///
, span size(medium)) ///
blabel(bar, format(%4.1f)) ///
intensity(25) ///
asyvars

Podemos cambiar de esquemas para hacer estos gráficos más bonitos. Podemos instalar unos mejores esquemas

help schemes

ssc install blindschemes, replace

Checa el uso de las tres diagonales.


graph query, schemes

catplot r104 actpr2012 if r106>15, ///
percent(r104) ///
var1opts(label(labsize(small))) ///
var2opts(label(labsize(small)))  ///
title("Condición de actividad" ///
, span size(medium)) ///
blabel(bar, format(%4.1f)) ///
intensity(25) ///
asyvars scheme(plottig)
Available schemes are

    plotplain
    plotplainblind
    plottig
    plottigblind
    s2color        see help scheme_s2color
    s2mono         see help scheme_s2mono
    s2manual       see help scheme_s2manual
    s2gmanual      see help scheme_s2gmanual
    s2gcolor       see help scheme_s2gcolor
    s1color        see help scheme_s1color
    s1mono         see help scheme_s1mono
    s1rcolor       see help scheme_s1rcolor
    s1manual       see help scheme_s1manual
    sj             see help scheme_sj
    economist      see help scheme_economist
    s2color8       see help scheme_s2color8
    _grstyle_
    burd           see help scheme_burd
    burd10
    burd11
    burd3
    burd4
    burd5
    burd6
    burd7
    burd8
    burd9
    meta

Si quisieras hacerlo con la opción de barras… habría que empezar con algo así:


tab r104, gen(s_)
graph hbar s_1 s_2  if r106>15, over(actpr2012)
       sexo |      Freq.     Percent        Cum.
------------+-----------------------------------
     hombre |     35,099       47.15       47.15
      mujer |     39,349       52.85      100.00
------------+-----------------------------------
      Total |     74,448      100.00

Las barras deben llevar “algo”. Porque están construidas por variables (puedes hacer conteos, sumas o promedio - el default)

graph hbar (mean) money if r106>15, over(ciuo414)

Intervalos de confianza y pruebas de hipótesis

En general, para las estimaciones poblacionales, tendremos un estadístico muestral que se aproxima al parámetro poblacional, más o menos un error. Ello da como resultado un intervalo de confianza a un nivel de confianza por determinar.

\[ parámetro= estadístico \pm error \] Si asumimos un muestreo aleatorio simple

Una sola media


ci means r106
ci means r106, level(99)
ci means r01b, poisson
    Variable |        Obs        Mean    Std. err.       [95% conf. interval]
-------------+---------------------------------------------------------------
        r106 |     74,448    31.93829    .0797047        31.78207    32.09451

    Variable |        Obs        Mean    Std. err.       [99% conf. interval]
-------------+---------------------------------------------------------------
        r106 |     74,448    31.93829    .0797047        31.73298     32.1436

                                                            Poisson exact    
    Variable |   Exposure        Mean    Std. err.       [95% conf. interval]
-------------+---------------------------------------------------------------
        r01b |      12308    1.989438    .0127137        1.964596    2.014515

Una proporción


ci proportion s_1 s_2
                                                            Binomial exact   
    Variable |        Obs  Proportion    Std. err.       [95% conf. interval]
-------------+---------------------------------------------------------------
         s_1 |     74,448    .4714566    .0018295        .4678653    .4750501
         s_2 |     74,448    .5285434    .0018295        .5249499    .5321347

No permite que pongamos factores de expansión.

t-test

Para una sola muestra, podemos poner un valor normativo como hipótesis nula y el programa nos da las tres diferentes hipótesis alternativas:


ttest money==240 if actpr2012==10
One-sample t test
------------------------------------------------------------------------------
Variable |     Obs        Mean    Std. err.   Std. dev.   [95% conf. interval]
---------+--------------------------------------------------------------------
   money |  32,258    270.7917    2.035636    365.6106    266.8018    274.7816
------------------------------------------------------------------------------
    mean = mean(money)                                            t =  15.1263
H0: mean = 240                                   Degrees of freedom =    32257

   Ha: mean < 240               Ha: mean != 240               Ha: mean > 240
 Pr(T < t) = 1.0000         Pr(|T| > |t|) = 0.0000          Pr(T > t) = 0.0000

El output comentado es un poco como lo que sigue:

\[ H_o:\mu=240 \] \[ H_{a1}: \mu < 240 \] \[ H_{a2}: \mu \neq 240 \] \[ H_{a3}: \mu > 240 \] Para dos muestras podemos establecer una diferencia entre dos variables:


ttest money if actpr2012==10, by(r104)
ttest money if actpr2012==10, by(r104) unequal
Two-sample t test with equal variances
------------------------------------------------------------------------------
   Group |     Obs        Mean    Std. err.   Std. dev.   [95% conf. interval]
---------+--------------------------------------------------------------------
  hombre |  19,349    280.1702    2.938265    408.7147    274.4109    285.9294
   mujer |  12,909    256.7346    2.540604    288.6578    251.7546    261.7146
---------+--------------------------------------------------------------------
Combined |  32,258    270.7917    2.035636    365.6106    266.8018    274.7816
---------+--------------------------------------------------------------------
    diff |            23.43556    4.152928                15.29566    31.57545
------------------------------------------------------------------------------
    diff = mean(hombre) - mean(mujer)                             t =   5.6431
H0: diff = 0                                     Degrees of freedom =    32256

    Ha: diff < 0                 Ha: diff != 0                 Ha: diff > 0
 Pr(T < t) = 1.0000         Pr(|T| > |t|) = 0.0000          Pr(T > t) = 0.0000


Two-sample t test with unequal variances
------------------------------------------------------------------------------
   Group |     Obs        Mean    Std. err.   Std. dev.   [95% conf. interval]
---------+--------------------------------------------------------------------
  hombre |  19,349    280.1702    2.938265    408.7147    274.4109    285.9294
   mujer |  12,909    256.7346    2.540604    288.6578    251.7546    261.7146
---------+--------------------------------------------------------------------
Combined |  32,258    270.7917    2.035636    365.6106    266.8018    274.7816
---------+--------------------------------------------------------------------
    diff |            23.43556    3.884337                15.82211      31.049
------------------------------------------------------------------------------
    diff = mean(hombre) - mean(mujer)                             t =   6.0333
H0: diff = 0                     Satterthwaite's degrees of freedom =  32153.8

    Ha: diff < 0                 Ha: diff != 0                 Ha: diff > 0
 Pr(T < t) = 1.0000         Pr(|T| > |t|) = 0.0000          Pr(T > t) = 0.0000

Si tuviéramos dos observaciones sobre la misma unidad de análisis podemos establecer la opción “paired” que se escribe un poco distinto

ttest var1==var2  

OJO:El comando ttest no permiten los pesos. Ojo sería un error aplicar inferencia con “fweights”

Prueba para varianzas

En realidad en STATA tenemos un comando pero para las desviaciones estándar:

sdtest money == 10 if actpr2012==10
One-sample test of variance
------------------------------------------------------------------------------
Variable |     Obs        Mean    Std. err.   Std. dev.   [95% conf. interval]
---------+--------------------------------------------------------------------
   money |  32,258    270.7917    2.035636    365.6106    266.8018    274.7816
------------------------------------------------------------------------------
    sd = sd(money)                                         c = chi2 =  4.3e+07
H0: sd = 10                                      Degrees of freedom =    32257

     Ha: sd < 10                 Ha: sd != 10                   Ha: sd > 10
  Pr(C < c) = 1.0000         2*Pr(C > c) = 0.0000           Pr(C > c) = 0.0000

También ponemos la H0 y nos da las tres alternativas

\[ H_o:\sigma=10 \] \[ H_{a1}: \sigma < 10 \] \[ H_{a2}: \sigma \neq 10 \] \[ H_{a3}: \sigma > 10 \]

Pruebas para diferencias de varianzas

Para grupos tenemos:


sdtest money if actpr2012==10, by(r104)
Variance ratio test
------------------------------------------------------------------------------
   Group |     Obs        Mean    Std. err.   Std. dev.   [95% conf. interval]
---------+--------------------------------------------------------------------
  hombre |  19,349    280.1702    2.938265    408.7147    274.4109    285.9294
   mujer |  12,909    256.7346    2.540604    288.6578    251.7546    261.7146
---------+--------------------------------------------------------------------
Combined |  32,258    270.7917    2.035636    365.6106    266.8018    274.7816
------------------------------------------------------------------------------
    ratio = sd(hombre) / sd(mujer)                                f =   2.0048
H0: ratio = 1                                Degrees of freedom = 19348, 12908

    Ha: ratio < 1               Ha: ratio != 1                 Ha: ratio > 1
  Pr(F < f) = 1.0000         2*Pr(F > f) = 0.0000           Pr(F > f) = 0.0000

Por ejemplo, para el caso de la desigualdad \[H_o:\frac{\sigma_1^2}{\sigma_2^2}=1\] \[H_a:\frac{\sigma_1^2}{\sigma_2^2}\neq1\]

Prueba chi-cuadrado

Cuando tenemos dos variables cualitativas o nominales podemos hacer esta la prueba chi-cuadrado, o prueba de independencia. Esta tiene una lógica un poco diferente a las pruebas que hemos hecho hasta hoy, porque proviene de comparar la distribución de los datos dado que no hay independencia entre las variables y los datos que tenemos.

Esta prueba la podemos pedir con el tabulate:


tab actpr2012 r104 if r106>15, chi
    estado |
ocupaciona |         sexo
l agregado |    hombre      mujer |     Total
-----------+----------------------+----------
   ocupado |    18,813     12,677 |    31,490 
desocupado |     1,416        632 |     2,048 
  inactivo |     4,711     16,375 |    21,086 
-----------+----------------------+----------
     Total |    24,940     29,684 |    54,624 

          Pearson chi2(2) =  7.6e+03   Pr = 0.000

\[H_o:\text{Las variables son independientes}\] \[H_a:\text{Las variables no son independientes}\] Podemos ver cómo se llega al estadístico de prueba chi con los siguientes comandos:


tab actpr2012 r104 if r106>15, expected
tab actpr2012 r104 if r106>15, cchi
| Key                |
|--------------------|
|     frequency      |
| expected frequency |
+--------------------+

    estado |
ocupaciona |         sexo
l agregado |    hombre      mujer |     Total
-----------+----------------------+----------
   ocupado |    18,813     12,677 |    31,490 
           |  14,377.6   17,112.4 |  31,490.0 
-----------+----------------------+----------
desocupado |     1,416        632 |     2,048 
           |     935.1    1,112.9 |   2,048.0 
-----------+----------------------+----------
  inactivo |     4,711     16,375 |    21,086 
           |   9,627.4   11,458.6 |  21,086.0 
-----------+----------------------+----------
     Total |    24,940     29,684 |    54,624 
           |  24,940.0   29,684.0 |  54,624.0 


+-------------------+
| Key               |
|-------------------|
|     frequency     |
| chi2 contribution |
+-------------------+

    estado |
ocupaciona |         sexo
l agregado |    hombre      mujer |     Total
-----------+----------------------+----------
   ocupado |    18,813     12,677 |    31,490 
           |    1368.3     1149.6 |    2517.9 
-----------+----------------------+----------
desocupado |     1,416        632 |     2,048 
           |     247.4      207.8 |     455.2 
-----------+----------------------+----------
  inactivo |     4,711     16,375 |    21,086 
           |    2510.6     2109.4 |    4620.0 
-----------+----------------------+----------
     Total |    24,940     29,684 |    54,624 
           |    4126.3     3466.8 |    7593.1 

Una vez que sabemos que no son independientes podemos medir con Cramer V la intensidad de la dependencia:

tab actpr2012 r104 if r106>15, V
    estado |
ocupaciona |         sexo
l agregado |    hombre      mujer |     Total
-----------+----------------------+----------
   ocupado |    18,813     12,677 |    31,490 
desocupado |     1,416        632 |     2,048 
  inactivo |     4,711     16,375 |    21,086 
-----------+----------------------+----------
     Total |    24,940     29,684 |    54,624 

               Cramér's V =   0.3728

Prueba anova

Vamos a quedarnos con la anova de un solo factor; si queremos observar diferencias entre grupos de más de dos categorías

\[H_o:\mu_1=\mu_2=\mu_3=\mu_4\]

\[H_a:\text{Alguna de las medias es diferente}\]

oneway money region if actpr2012==10
                        Analysis of variance
    Source              SS         df      MS            F     Prob > F
------------------------------------------------------------------------
Between groups      86395725.3      4   21598931.3    164.87     0.0000
 Within groups      4.2254e+09  32253   131009.004
------------------------------------------------------------------------
    Total           4.3118e+09  32257   133671.114

Bartlett's equal-variances test: chi2(4) =  3.5e+03    Prob>chi2 = 0.000

No obstante esta prueba tiene los siguientes supuestos:

  • Las observaciones se obtienen de forma independiente y aleatoria de la población definida por los niveles del factor

  • Los datos de cada nivel de factor se distribuyen normalmente.

  • Estas poblaciones normales tienen una varianza común.

Ya sabemos que money no es normal

Pruebas no paramétricas

Me robo esta imagen de Moore(2010, p.729)

Wilcoxon

ranksum money if actpr2012==10, by(r104)
Two-sample Wilcoxon rank-sum (Mann–Whitney) test

        r104 |      Obs    Rank sum    Expected
-------------+---------------------------------
      hombre |    19349   3.190e+08   3.121e+08
       mujer |    12909   2.013e+08   2.082e+08
-------------+---------------------------------
    Combined |    32258   5.203e+08   5.203e+08

Unadjusted variance   6.715e+11
Adjustment for ties  -3.171e+09
                     ----------
Adjusted variance     6.683e+11

H0: money(r104==hombre) = money(r104==mujer)
         z =  8.417
Prob > |z| = 0.0000

Kruskal-Wallis

kwallis money if actpr2012==10, by(region)
Kruskal–Wallis equality-of-populations rank test

  +-----------------------------+
  |   region |   Obs | Rank sum |
  |----------+-------+----------|
  | occident | 7,686 | 1.17e+08 |
  |  central | 7,429 | 1.22e+08 |
  |  central | 5,253 | 7.87e+07 |
  | oriental | 7,161 | 1.05e+08 |
  |  Área me | 4,729 | 9.73e+07 |
  +-----------------------------+

  chi2(4) = 1399.176
     Prob =   0.0001

  chi2(4) with ties = 1405.816
               Prob =   0.0001

Correlaciones

Primero un gráfico:

graph matrix money r106 aproba1 if actpr2012==10

También podemos sacar significancias estadísticas de las correlaciones:

corr money r106 if actpr2012==10
pwcorr money r106 if actpr2012==10
pwcorr money r106 if actpr2012==10, sig
(obs=32,258)

             |    money     r106
-------------+------------------
       money |   1.0000
        r106 |   0.0608   1.0000

             |    money     r106
-------------+------------------
       money |   1.0000 
        r106 |   0.0608   1.0000 

             |    money     r106
-------------+------------------
       money |   1.0000 
             |
             |
        r106 |   0.0608   1.0000 
             |   0.0000
             |

También hay correlaciones “no paramétricas”. Las más famosas son tau (para datos ordinales) y Spearman (para relaciones monótonas)

spearman money r106 aproba1 if actpr2012==10, stats(p)
*ktau money r106 aproba1 if actpr2012==10, stats(p) // se tarda un montón
(obs=32258)

+-----------------+
|  Key            |
|-----------------|
|   Sig. level    |
+-----------------+

             |    money     r106  aproba1
-------------+---------------------------
       money | 
        r106 |   0.0000 
     aproba1 |   0.0000   0.0000 

Intervalos de confianza y diseño muestral complejo

Primero tenemos que configurar que tenemos un diseño muestral complejo. Es decir, explicitar la unida de primaria de muestro, el estrato y el factor de expansión. Veremos que aquí no hay problema de que hayan decimales:

Diseño muestral complejo


svyset correlativo [pw=fac00],  ///
strata(estratoarea) vce(linearized) singleunit(certainty)
Sampling weights: fac00
             VCE: linearized
     Single unit: certainty
        Strata 1: estratoarea
 Sampling unit 1: correlativo
           FPC 1: <zero>

Intervalo de confianza para medias

Con esto veremos las diferencias en las estimaciones y presentaremos el comando “mean”


mean ingfa if r103==1 // ¿por qué este filtro?

mean ingfa if r103==1  [pw=fac00]

svy: mean ingfa if r103==1 
Mean estimation                         Number of obs = 21,331

--------------------------------------------------------------
             |       Mean   Std. err.     [95% conf. interval]
-------------+------------------------------------------------
       ingfa |   572.8225   4.065057      564.8547    580.7903
--------------------------------------------------------------


Mean estimation                         Number of obs = 21,331

--------------------------------------------------------------
             |       Mean   Std. err.     [95% conf. interval]
-------------+------------------------------------------------
       ingfa |   619.8996   6.455866      607.2456    632.5535
--------------------------------------------------------------

(running mean on estimation sample)

Survey: Mean estimation

Number of strata =   119           Number of obs   =    21,331
Number of PSUs   = 1,663           Population size = 1,938,530
                                   Design df       =     1,544

--------------------------------------------------------------
             |             Linearized
             |       Mean   std. err.     [95% conf. interval]
-------------+------------------------------------------------
       ingfa |   619.8996   8.065845      604.0784    635.7207
--------------------------------------------------------------

¿Cuál es la diferencia? ¿Qué asume el error muestral?

Un elemento fundamental para las estimaciones es el coeficiente de variación.

—> Revisemos el documento metodológico:


estat cv
             |             Linearized
             |       Mean   std. err.     CV (%)
-------------+----------------------------------
       ingfa |   619.8996   8.065845     1.30115
------------------------------------------------

Veamos con otra variable per cápita

svy: mean ingpe

estat cv
(running mean on estimation sample)

Survey: Mean estimation

Number of strata =   119           Number of obs   =    74,448
Number of PSUs   = 1,663           Population size = 6,704,864
                                   Design df       =     1,544

--------------------------------------------------------------
             |             Linearized
             |       Mean   std. err.     [95% conf. interval]
-------------+------------------------------------------------
       ingpe |   179.3531   2.296672      174.8481     183.858
--------------------------------------------------------------


------------------------------------------------
             |             Linearized
             |       Mean   std. err.     CV (%)
-------------+----------------------------------
       ingpe |   179.3531   2.296672     1.28053
------------------------------------------------

Si queremos más estimaciones para otras categorías podemos utilizar la opción “over”

svy: mean ingpe, over(region)

estat cv
(running mean on estimation sample)

Survey: Mean estimation

Number of strata =   119                            Number of obs   =    74,448
Number of PSUs   = 1,663                            Population size = 6,704,864
                                                    Design df       =     1,544

------------------------------------------------------------------------------
                             |             Linearized
                             |       Mean   std. err.     [95% conf. interval]
-----------------------------+------------------------------------------------
              c.ingpe@region |
                 occidental  |    159.689   4.265919      151.3214    168.0567
                  central i  |   155.3087   2.645178      150.1202    160.4973
                 central ii  |   143.2444   3.109313      137.1455    149.3433
                   oriental  |   160.9988   3.853649      153.4399    168.5578
Área metropolitana de san..  |   241.3709   6.987323      227.6652    255.0765
------------------------------------------------------------------------------


------------------------------------------------
             |             Linearized
        Over |       Mean   std. err.     CV (%)
-------------+----------------------------------
     c.ingpe@|
      region |
 occidental  |    159.689   4.265919     2.67139
  central i  |   155.3087   2.645178     1.70317
 central ii  |   143.2444   3.109313     2.17064
   oriental  |   160.9988   3.853649     2.39359
Área metr..  |   241.3709   6.987323     2.89485
------------------------------------------------

Intervalo para proporciones

Usamos el prefijo “svy:”, seguido de “proportion”


svyset correlativo [pw=fac00],  ///
strata(estratoarea) vce(linearized) singleunit(certainty)

svy: proportion actpr2012 if r106>15
estat cv
Sampling weights: fac00
             VCE: linearized
     Single unit: certainty
        Strata 1: estratoarea
 Sampling unit 1: correlativo
           FPC 1: <zero>

(running proportion on estimation sample)

Survey: Proportion estimation

Number of strata =   119           Number of obs   =    54,624
Number of PSUs   = 1,663           Population size = 4,995,745
                                   Design df       =     1,544

--------------------------------------------------------------
             |             Linearized            Logit
             | Proportion   std. err.     [95% conf. interval]
-------------+------------------------------------------------
   actpr2012 |
    ocupado  |   .5821192   .0031284      .5759704    .5882427
 desocupado  |   .0393829   .0014533      .0366292    .0423346
   inactivo  |   .3784978   .0031459       .372347     .384688
--------------------------------------------------------------


------------------------------------------------
             |             Linearized
             | Proportion   std. err.     CV (%)
-------------+----------------------------------
   actpr2012 |
    ocupado  |   .5821192   .0031284     .537421
 desocupado  |   .0393829   .0014533     3.69008
   inactivo  |   .3784978   .0031459     .831166
------------------------------------------------

También funciona con “over”:

svy: proportion actpr2012 if r106>15, over(region)
estat cv
(running proportion on estimation sample)

Survey: Proportion estimation

Number of strata =   119                            Number of obs   =    54,624
Number of PSUs   = 1,663                            Population size = 4,995,745
                                                    Design df       =     1,544

------------------------------------------------------------------------------
                             |             Linearized            Logit
                             | Proportion   std. err.     [95% conf. interval]
-----------------------------+------------------------------------------------
            actpr2012@region |
         ocupado occidental  |   .5922812   .0057454      .5809649    .6035005
          ocupado central i  |   .5930421   .0058679       .581483     .604499
         ocupado central ii  |   .5650231   .0071712      .5509082    .5790334
           ocupado oriental  |   .5498969   .0060193      .5380642    .5616735
                    ocupado #|
Área metropolitana de san..  |   .5957928   .0078588       .580288    .6111088
      desocupado occidental  |   .0399321   .0027085      .0349452     .045597
       desocupado central i  |   .0385112   .0027241      .0335096     .044225
      desocupado central ii  |   .0431452   .0038941      .0361208    .0514628
        desocupado oriental  |   .0342311   .0025793       .029517    .0396674
                 desocupado #|
Área metropolitana de san..  |   .0417492   .0036074      .0352195    .0494275
        inactivo occidental  |   .3677867   .0055249       .357018    .3786889
         inactivo central i  |   .3684468   .0055243      .3576787    .3793476
        inactivo central ii  |   .3918317   .0059442      .3802358    .4035509
          inactivo oriental  |   .4158719   .0060812       .403995    .4278474
                   inactivo #|
Área metropolitana de san..  |    .362458   .0082392      .3464572    .3787695
------------------------------------------------------------------------------


------------------------------------------------
             |             Linearized
        Over | Proportion   std. err.     CV (%)
-------------+----------------------------------
   actpr2012@|
      region |
    ocupado #|
 occidental  |   .5922812   .0057454     .970051
    ocupado #|
  central i  |   .5930421   .0058679     .989463
    ocupado #|
 central ii  |   .5650231   .0071712     1.26918
    ocupado #|
   oriental  |   .5498969   .0060193     1.09462
    ocupado #|
Área metr..  |   .5957928   .0078588     1.31905
 desocupado #|
 occidental  |   .0399321   .0027085     6.78288
 desocupado #|
  central i  |   .0385112   .0027241     7.07347
 desocupado #|
 central ii  |   .0431452   .0038941     9.02554
 desocupado #|
   oriental  |   .0342311   .0025793     7.53506
 desocupado #|
Área metr..  |   .0417492   .0036074     8.64067
   inactivo #|
 occidental  |   .3677867   .0055249     1.50219
   inactivo #|
  central i  |   .3684468   .0055243     1.49936
   inactivo #|
 central ii  |   .3918317   .0059442     1.51702
   inactivo #|
   oriental  |   .4158719   .0060812     1.46229
   inactivo #|
Área metr..  |    .362458   .0082392     2.27315
------------------------------------------------